#假定有下面这样的列表：
#spam = ['apples', 'bananas', 'tofu', 'cats']
# 编写一个函数，它以一个列表值作为参数，返回一个字符串。该字符串包含所
# 有表项，表项之间以逗号和空格分隔，并在最后一个表项之前插入 and。例如，将
# 前面的 spam 列表传递给函数，将返回'apples, bananas, tofu, and cats'。但你的函数应
# 该能够处理传递给它的任何列表。


#1.引号有点麻烦
# def comma(list):
#     x = "'"
#     for i in range(len(list)-1):
#         x += str(list[i]) + ","
#     x += " and " + str(list[-1]) + "'"
#     return x

# spam = ['cat','dog',23]
# print(comma(spam))

#2.pop函数-引号没解决
import copy
def comma(list):
    list1 = list.copy()
    list1.insert(-1,'and')
    list2 = list1.pop()
    list1.append(list2)
    return list1
spam = ['apple','dog',23,True]
print(comma(spam))